package com.zhongwang.mms.gen.entity;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class MInventoryProjectMarkExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public MInventoryProjectMarkExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIpmIdIsNull() {
            addCriterion("ipm_id is null");
            return (Criteria) this;
        }

        public Criteria andIpmIdIsNotNull() {
            addCriterion("ipm_id is not null");
            return (Criteria) this;
        }

        public Criteria andIpmIdEqualTo(Integer value) {
            addCriterion("ipm_id =", value, "ipmId");
            return (Criteria) this;
        }

        public Criteria andIpmIdNotEqualTo(Integer value) {
            addCriterion("ipm_id <>", value, "ipmId");
            return (Criteria) this;
        }

        public Criteria andIpmIdGreaterThan(Integer value) {
            addCriterion("ipm_id >", value, "ipmId");
            return (Criteria) this;
        }

        public Criteria andIpmIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("ipm_id >=", value, "ipmId");
            return (Criteria) this;
        }

        public Criteria andIpmIdLessThan(Integer value) {
            addCriterion("ipm_id <", value, "ipmId");
            return (Criteria) this;
        }

        public Criteria andIpmIdLessThanOrEqualTo(Integer value) {
            addCriterion("ipm_id <=", value, "ipmId");
            return (Criteria) this;
        }

        public Criteria andIpmIdIn(List<Integer> values) {
            addCriterion("ipm_id in", values, "ipmId");
            return (Criteria) this;
        }

        public Criteria andIpmIdNotIn(List<Integer> values) {
            addCriterion("ipm_id not in", values, "ipmId");
            return (Criteria) this;
        }

        public Criteria andIpmIdBetween(Integer value1, Integer value2) {
            addCriterion("ipm_id between", value1, value2, "ipmId");
            return (Criteria) this;
        }

        public Criteria andIpmIdNotBetween(Integer value1, Integer value2) {
            addCriterion("ipm_id not between", value1, value2, "ipmId");
            return (Criteria) this;
        }

        public Criteria andIpmAfterItyIdIsNull() {
            addCriterion("ipm_after_ity_id is null");
            return (Criteria) this;
        }

        public Criteria andIpmAfterItyIdIsNotNull() {
            addCriterion("ipm_after_ity_id is not null");
            return (Criteria) this;
        }

        public Criteria andIpmAfterItyIdEqualTo(Integer value) {
            addCriterion("ipm_after_ity_id =", value, "ipmAfterItyId");
            return (Criteria) this;
        }

        public Criteria andIpmAfterItyIdNotEqualTo(Integer value) {
            addCriterion("ipm_after_ity_id <>", value, "ipmAfterItyId");
            return (Criteria) this;
        }

        public Criteria andIpmAfterItyIdGreaterThan(Integer value) {
            addCriterion("ipm_after_ity_id >", value, "ipmAfterItyId");
            return (Criteria) this;
        }

        public Criteria andIpmAfterItyIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("ipm_after_ity_id >=", value, "ipmAfterItyId");
            return (Criteria) this;
        }

        public Criteria andIpmAfterItyIdLessThan(Integer value) {
            addCriterion("ipm_after_ity_id <", value, "ipmAfterItyId");
            return (Criteria) this;
        }

        public Criteria andIpmAfterItyIdLessThanOrEqualTo(Integer value) {
            addCriterion("ipm_after_ity_id <=", value, "ipmAfterItyId");
            return (Criteria) this;
        }

        public Criteria andIpmAfterItyIdIn(List<Integer> values) {
            addCriterion("ipm_after_ity_id in", values, "ipmAfterItyId");
            return (Criteria) this;
        }

        public Criteria andIpmAfterItyIdNotIn(List<Integer> values) {
            addCriterion("ipm_after_ity_id not in", values, "ipmAfterItyId");
            return (Criteria) this;
        }

        public Criteria andIpmAfterItyIdBetween(Integer value1, Integer value2) {
            addCriterion("ipm_after_ity_id between", value1, value2, "ipmAfterItyId");
            return (Criteria) this;
        }

        public Criteria andIpmAfterItyIdNotBetween(Integer value1, Integer value2) {
            addCriterion("ipm_after_ity_id not between", value1, value2, "ipmAfterItyId");
            return (Criteria) this;
        }

        public Criteria andIpmBeforeItyIdIsNull() {
            addCriterion("ipm_before_ity_id is null");
            return (Criteria) this;
        }

        public Criteria andIpmBeforeItyIdIsNotNull() {
            addCriterion("ipm_before_ity_id is not null");
            return (Criteria) this;
        }

        public Criteria andIpmBeforeItyIdEqualTo(Integer value) {
            addCriterion("ipm_before_ity_id =", value, "ipmBeforeItyId");
            return (Criteria) this;
        }

        public Criteria andIpmBeforeItyIdNotEqualTo(Integer value) {
            addCriterion("ipm_before_ity_id <>", value, "ipmBeforeItyId");
            return (Criteria) this;
        }

        public Criteria andIpmBeforeItyIdGreaterThan(Integer value) {
            addCriterion("ipm_before_ity_id >", value, "ipmBeforeItyId");
            return (Criteria) this;
        }

        public Criteria andIpmBeforeItyIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("ipm_before_ity_id >=", value, "ipmBeforeItyId");
            return (Criteria) this;
        }

        public Criteria andIpmBeforeItyIdLessThan(Integer value) {
            addCriterion("ipm_before_ity_id <", value, "ipmBeforeItyId");
            return (Criteria) this;
        }

        public Criteria andIpmBeforeItyIdLessThanOrEqualTo(Integer value) {
            addCriterion("ipm_before_ity_id <=", value, "ipmBeforeItyId");
            return (Criteria) this;
        }

        public Criteria andIpmBeforeItyIdIn(List<Integer> values) {
            addCriterion("ipm_before_ity_id in", values, "ipmBeforeItyId");
            return (Criteria) this;
        }

        public Criteria andIpmBeforeItyIdNotIn(List<Integer> values) {
            addCriterion("ipm_before_ity_id not in", values, "ipmBeforeItyId");
            return (Criteria) this;
        }

        public Criteria andIpmBeforeItyIdBetween(Integer value1, Integer value2) {
            addCriterion("ipm_before_ity_id between", value1, value2, "ipmBeforeItyId");
            return (Criteria) this;
        }

        public Criteria andIpmBeforeItyIdNotBetween(Integer value1, Integer value2) {
            addCriterion("ipm_before_ity_id not between", value1, value2, "ipmBeforeItyId");
            return (Criteria) this;
        }

        public Criteria andIpmNumIsNull() {
            addCriterion("ipm_num is null");
            return (Criteria) this;
        }

        public Criteria andIpmNumIsNotNull() {
            addCriterion("ipm_num is not null");
            return (Criteria) this;
        }

        public Criteria andIpmNumEqualTo(Double value) {
            addCriterion("ipm_num =", value, "ipmNum");
            return (Criteria) this;
        }

        public Criteria andIpmNumNotEqualTo(Double value) {
            addCriterion("ipm_num <>", value, "ipmNum");
            return (Criteria) this;
        }

        public Criteria andIpmNumGreaterThan(Double value) {
            addCriterion("ipm_num >", value, "ipmNum");
            return (Criteria) this;
        }

        public Criteria andIpmNumGreaterThanOrEqualTo(Double value) {
            addCriterion("ipm_num >=", value, "ipmNum");
            return (Criteria) this;
        }

        public Criteria andIpmNumLessThan(Double value) {
            addCriterion("ipm_num <", value, "ipmNum");
            return (Criteria) this;
        }

        public Criteria andIpmNumLessThanOrEqualTo(Double value) {
            addCriterion("ipm_num <=", value, "ipmNum");
            return (Criteria) this;
        }

        public Criteria andIpmNumIn(List<Double> values) {
            addCriterion("ipm_num in", values, "ipmNum");
            return (Criteria) this;
        }

        public Criteria andIpmNumNotIn(List<Double> values) {
            addCriterion("ipm_num not in", values, "ipmNum");
            return (Criteria) this;
        }

        public Criteria andIpmNumBetween(Double value1, Double value2) {
            addCriterion("ipm_num between", value1, value2, "ipmNum");
            return (Criteria) this;
        }

        public Criteria andIpmNumNotBetween(Double value1, Double value2) {
            addCriterion("ipm_num not between", value1, value2, "ipmNum");
            return (Criteria) this;
        }

        public Criteria andIpmWeightIsNull() {
            addCriterion("ipm_weight is null");
            return (Criteria) this;
        }

        public Criteria andIpmWeightIsNotNull() {
            addCriterion("ipm_weight is not null");
            return (Criteria) this;
        }

        public Criteria andIpmWeightEqualTo(Double value) {
            addCriterion("ipm_weight =", value, "ipmWeight");
            return (Criteria) this;
        }

        public Criteria andIpmWeightNotEqualTo(Double value) {
            addCriterion("ipm_weight <>", value, "ipmWeight");
            return (Criteria) this;
        }

        public Criteria andIpmWeightGreaterThan(Double value) {
            addCriterion("ipm_weight >", value, "ipmWeight");
            return (Criteria) this;
        }

        public Criteria andIpmWeightGreaterThanOrEqualTo(Double value) {
            addCriterion("ipm_weight >=", value, "ipmWeight");
            return (Criteria) this;
        }

        public Criteria andIpmWeightLessThan(Double value) {
            addCriterion("ipm_weight <", value, "ipmWeight");
            return (Criteria) this;
        }

        public Criteria andIpmWeightLessThanOrEqualTo(Double value) {
            addCriterion("ipm_weight <=", value, "ipmWeight");
            return (Criteria) this;
        }

        public Criteria andIpmWeightIn(List<Double> values) {
            addCriterion("ipm_weight in", values, "ipmWeight");
            return (Criteria) this;
        }

        public Criteria andIpmWeightNotIn(List<Double> values) {
            addCriterion("ipm_weight not in", values, "ipmWeight");
            return (Criteria) this;
        }

        public Criteria andIpmWeightBetween(Double value1, Double value2) {
            addCriterion("ipm_weight between", value1, value2, "ipmWeight");
            return (Criteria) this;
        }

        public Criteria andIpmWeightNotBetween(Double value1, Double value2) {
            addCriterion("ipm_weight not between", value1, value2, "ipmWeight");
            return (Criteria) this;
        }

        public Criteria andIpmDateIsNull() {
            addCriterion("ipm_date is null");
            return (Criteria) this;
        }

        public Criteria andIpmDateIsNotNull() {
            addCriterion("ipm_date is not null");
            return (Criteria) this;
        }

        public Criteria andIpmDateEqualTo(Date value) {
            addCriterion("ipm_date =", value, "ipmDate");
            return (Criteria) this;
        }

        public Criteria andIpmDateNotEqualTo(Date value) {
            addCriterion("ipm_date <>", value, "ipmDate");
            return (Criteria) this;
        }

        public Criteria andIpmDateGreaterThan(Date value) {
            addCriterion("ipm_date >", value, "ipmDate");
            return (Criteria) this;
        }

        public Criteria andIpmDateGreaterThanOrEqualTo(Date value) {
            addCriterion("ipm_date >=", value, "ipmDate");
            return (Criteria) this;
        }

        public Criteria andIpmDateLessThan(Date value) {
            addCriterion("ipm_date <", value, "ipmDate");
            return (Criteria) this;
        }

        public Criteria andIpmDateLessThanOrEqualTo(Date value) {
            addCriterion("ipm_date <=", value, "ipmDate");
            return (Criteria) this;
        }

        public Criteria andIpmDateIn(List<Date> values) {
            addCriterion("ipm_date in", values, "ipmDate");
            return (Criteria) this;
        }

        public Criteria andIpmDateNotIn(List<Date> values) {
            addCriterion("ipm_date not in", values, "ipmDate");
            return (Criteria) this;
        }

        public Criteria andIpmDateBetween(Date value1, Date value2) {
            addCriterion("ipm_date between", value1, value2, "ipmDate");
            return (Criteria) this;
        }

        public Criteria andIpmDateNotBetween(Date value1, Date value2) {
            addCriterion("ipm_date not between", value1, value2, "ipmDate");
            return (Criteria) this;
        }

        public Criteria andIpmProposerIsNull() {
            addCriterion("ipm_proposer is null");
            return (Criteria) this;
        }

        public Criteria andIpmProposerIsNotNull() {
            addCriterion("ipm_proposer is not null");
            return (Criteria) this;
        }

        public Criteria andIpmProposerEqualTo(String value) {
            addCriterion("ipm_proposer =", value, "ipmProposer");
            return (Criteria) this;
        }

        public Criteria andIpmProposerNotEqualTo(String value) {
            addCriterion("ipm_proposer <>", value, "ipmProposer");
            return (Criteria) this;
        }

        public Criteria andIpmProposerGreaterThan(String value) {
            addCriterion("ipm_proposer >", value, "ipmProposer");
            return (Criteria) this;
        }

        public Criteria andIpmProposerGreaterThanOrEqualTo(String value) {
            addCriterion("ipm_proposer >=", value, "ipmProposer");
            return (Criteria) this;
        }

        public Criteria andIpmProposerLessThan(String value) {
            addCriterion("ipm_proposer <", value, "ipmProposer");
            return (Criteria) this;
        }

        public Criteria andIpmProposerLessThanOrEqualTo(String value) {
            addCriterion("ipm_proposer <=", value, "ipmProposer");
            return (Criteria) this;
        }

        public Criteria andIpmProposerLike(String value) {
            addCriterion("ipm_proposer like", value, "ipmProposer");
            return (Criteria) this;
        }

        public Criteria andIpmProposerNotLike(String value) {
            addCriterion("ipm_proposer not like", value, "ipmProposer");
            return (Criteria) this;
        }

        public Criteria andIpmProposerIn(List<String> values) {
            addCriterion("ipm_proposer in", values, "ipmProposer");
            return (Criteria) this;
        }

        public Criteria andIpmProposerNotIn(List<String> values) {
            addCriterion("ipm_proposer not in", values, "ipmProposer");
            return (Criteria) this;
        }

        public Criteria andIpmProposerBetween(String value1, String value2) {
            addCriterion("ipm_proposer between", value1, value2, "ipmProposer");
            return (Criteria) this;
        }

        public Criteria andIpmProposerNotBetween(String value1, String value2) {
            addCriterion("ipm_proposer not between", value1, value2, "ipmProposer");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectCodeIsNull() {
            addCriterion("ipm_in_project_code is null");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectCodeIsNotNull() {
            addCriterion("ipm_in_project_code is not null");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectCodeEqualTo(String value) {
            addCriterion("ipm_in_project_code =", value, "ipmInProjectCode");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectCodeNotEqualTo(String value) {
            addCriterion("ipm_in_project_code <>", value, "ipmInProjectCode");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectCodeGreaterThan(String value) {
            addCriterion("ipm_in_project_code >", value, "ipmInProjectCode");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectCodeGreaterThanOrEqualTo(String value) {
            addCriterion("ipm_in_project_code >=", value, "ipmInProjectCode");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectCodeLessThan(String value) {
            addCriterion("ipm_in_project_code <", value, "ipmInProjectCode");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectCodeLessThanOrEqualTo(String value) {
            addCriterion("ipm_in_project_code <=", value, "ipmInProjectCode");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectCodeLike(String value) {
            addCriterion("ipm_in_project_code like", value, "ipmInProjectCode");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectCodeNotLike(String value) {
            addCriterion("ipm_in_project_code not like", value, "ipmInProjectCode");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectCodeIn(List<String> values) {
            addCriterion("ipm_in_project_code in", values, "ipmInProjectCode");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectCodeNotIn(List<String> values) {
            addCriterion("ipm_in_project_code not in", values, "ipmInProjectCode");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectCodeBetween(String value1, String value2) {
            addCriterion("ipm_in_project_code between", value1, value2, "ipmInProjectCode");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectCodeNotBetween(String value1, String value2) {
            addCriterion("ipm_in_project_code not between", value1, value2, "ipmInProjectCode");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectNameIsNull() {
            addCriterion("ipm_in_project_name is null");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectNameIsNotNull() {
            addCriterion("ipm_in_project_name is not null");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectNameEqualTo(String value) {
            addCriterion("ipm_in_project_name =", value, "ipmInProjectName");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectNameNotEqualTo(String value) {
            addCriterion("ipm_in_project_name <>", value, "ipmInProjectName");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectNameGreaterThan(String value) {
            addCriterion("ipm_in_project_name >", value, "ipmInProjectName");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectNameGreaterThanOrEqualTo(String value) {
            addCriterion("ipm_in_project_name >=", value, "ipmInProjectName");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectNameLessThan(String value) {
            addCriterion("ipm_in_project_name <", value, "ipmInProjectName");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectNameLessThanOrEqualTo(String value) {
            addCriterion("ipm_in_project_name <=", value, "ipmInProjectName");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectNameLike(String value) {
            addCriterion("ipm_in_project_name like", value, "ipmInProjectName");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectNameNotLike(String value) {
            addCriterion("ipm_in_project_name not like", value, "ipmInProjectName");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectNameIn(List<String> values) {
            addCriterion("ipm_in_project_name in", values, "ipmInProjectName");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectNameNotIn(List<String> values) {
            addCriterion("ipm_in_project_name not in", values, "ipmInProjectName");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectNameBetween(String value1, String value2) {
            addCriterion("ipm_in_project_name between", value1, value2, "ipmInProjectName");
            return (Criteria) this;
        }

        public Criteria andIpmInProjectNameNotBetween(String value1, String value2) {
            addCriterion("ipm_in_project_name not between", value1, value2, "ipmInProjectName");
            return (Criteria) this;
        }

        public Criteria andIpmRemarkIsNull() {
            addCriterion("ipm_remark is null");
            return (Criteria) this;
        }

        public Criteria andIpmRemarkIsNotNull() {
            addCriterion("ipm_remark is not null");
            return (Criteria) this;
        }

        public Criteria andIpmRemarkEqualTo(String value) {
            addCriterion("ipm_remark =", value, "ipmRemark");
            return (Criteria) this;
        }

        public Criteria andIpmRemarkNotEqualTo(String value) {
            addCriterion("ipm_remark <>", value, "ipmRemark");
            return (Criteria) this;
        }

        public Criteria andIpmRemarkGreaterThan(String value) {
            addCriterion("ipm_remark >", value, "ipmRemark");
            return (Criteria) this;
        }

        public Criteria andIpmRemarkGreaterThanOrEqualTo(String value) {
            addCriterion("ipm_remark >=", value, "ipmRemark");
            return (Criteria) this;
        }

        public Criteria andIpmRemarkLessThan(String value) {
            addCriterion("ipm_remark <", value, "ipmRemark");
            return (Criteria) this;
        }

        public Criteria andIpmRemarkLessThanOrEqualTo(String value) {
            addCriterion("ipm_remark <=", value, "ipmRemark");
            return (Criteria) this;
        }

        public Criteria andIpmRemarkLike(String value) {
            addCriterion("ipm_remark like", value, "ipmRemark");
            return (Criteria) this;
        }

        public Criteria andIpmRemarkNotLike(String value) {
            addCriterion("ipm_remark not like", value, "ipmRemark");
            return (Criteria) this;
        }

        public Criteria andIpmRemarkIn(List<String> values) {
            addCriterion("ipm_remark in", values, "ipmRemark");
            return (Criteria) this;
        }

        public Criteria andIpmRemarkNotIn(List<String> values) {
            addCriterion("ipm_remark not in", values, "ipmRemark");
            return (Criteria) this;
        }

        public Criteria andIpmRemarkBetween(String value1, String value2) {
            addCriterion("ipm_remark between", value1, value2, "ipmRemark");
            return (Criteria) this;
        }

        public Criteria andIpmRemarkNotBetween(String value1, String value2) {
            addCriterion("ipm_remark not between", value1, value2, "ipmRemark");
            return (Criteria) this;
        }

        public Criteria andIpmAppStatusIsNull() {
            addCriterion("ipm_app_status is null");
            return (Criteria) this;
        }

        public Criteria andIpmAppStatusIsNotNull() {
            addCriterion("ipm_app_status is not null");
            return (Criteria) this;
        }

        public Criteria andIpmAppStatusEqualTo(Integer value) {
            addCriterion("ipm_app_status =", value, "ipmAppStatus");
            return (Criteria) this;
        }

        public Criteria andIpmAppStatusNotEqualTo(Integer value) {
            addCriterion("ipm_app_status <>", value, "ipmAppStatus");
            return (Criteria) this;
        }

        public Criteria andIpmAppStatusGreaterThan(Integer value) {
            addCriterion("ipm_app_status >", value, "ipmAppStatus");
            return (Criteria) this;
        }

        public Criteria andIpmAppStatusGreaterThanOrEqualTo(Integer value) {
            addCriterion("ipm_app_status >=", value, "ipmAppStatus");
            return (Criteria) this;
        }

        public Criteria andIpmAppStatusLessThan(Integer value) {
            addCriterion("ipm_app_status <", value, "ipmAppStatus");
            return (Criteria) this;
        }

        public Criteria andIpmAppStatusLessThanOrEqualTo(Integer value) {
            addCriterion("ipm_app_status <=", value, "ipmAppStatus");
            return (Criteria) this;
        }

        public Criteria andIpmAppStatusIn(List<Integer> values) {
            addCriterion("ipm_app_status in", values, "ipmAppStatus");
            return (Criteria) this;
        }

        public Criteria andIpmAppStatusNotIn(List<Integer> values) {
            addCriterion("ipm_app_status not in", values, "ipmAppStatus");
            return (Criteria) this;
        }

        public Criteria andIpmAppStatusBetween(Integer value1, Integer value2) {
            addCriterion("ipm_app_status between", value1, value2, "ipmAppStatus");
            return (Criteria) this;
        }

        public Criteria andIpmAppStatusNotBetween(Integer value1, Integer value2) {
            addCriterion("ipm_app_status not between", value1, value2, "ipmAppStatus");
            return (Criteria) this;
        }

        public Criteria andIpmAccountIsNull() {
            addCriterion("ipm_account is null");
            return (Criteria) this;
        }

        public Criteria andIpmAccountIsNotNull() {
            addCriterion("ipm_account is not null");
            return (Criteria) this;
        }

        public Criteria andIpmAccountEqualTo(String value) {
            addCriterion("ipm_account =", value, "ipmAccount");
            return (Criteria) this;
        }

        public Criteria andIpmAccountNotEqualTo(String value) {
            addCriterion("ipm_account <>", value, "ipmAccount");
            return (Criteria) this;
        }

        public Criteria andIpmAccountGreaterThan(String value) {
            addCriterion("ipm_account >", value, "ipmAccount");
            return (Criteria) this;
        }

        public Criteria andIpmAccountGreaterThanOrEqualTo(String value) {
            addCriterion("ipm_account >=", value, "ipmAccount");
            return (Criteria) this;
        }

        public Criteria andIpmAccountLessThan(String value) {
            addCriterion("ipm_account <", value, "ipmAccount");
            return (Criteria) this;
        }

        public Criteria andIpmAccountLessThanOrEqualTo(String value) {
            addCriterion("ipm_account <=", value, "ipmAccount");
            return (Criteria) this;
        }

        public Criteria andIpmAccountLike(String value) {
            addCriterion("ipm_account like", value, "ipmAccount");
            return (Criteria) this;
        }

        public Criteria andIpmAccountNotLike(String value) {
            addCriterion("ipm_account not like", value, "ipmAccount");
            return (Criteria) this;
        }

        public Criteria andIpmAccountIn(List<String> values) {
            addCriterion("ipm_account in", values, "ipmAccount");
            return (Criteria) this;
        }

        public Criteria andIpmAccountNotIn(List<String> values) {
            addCriterion("ipm_account not in", values, "ipmAccount");
            return (Criteria) this;
        }

        public Criteria andIpmAccountBetween(String value1, String value2) {
            addCriterion("ipm_account between", value1, value2, "ipmAccount");
            return (Criteria) this;
        }

        public Criteria andIpmAccountNotBetween(String value1, String value2) {
            addCriterion("ipm_account not between", value1, value2, "ipmAccount");
            return (Criteria) this;
        }

        public Criteria andIpmNameDescExcelIsNull() {
            addCriterion("ipm_name_desc_excel is null");
            return (Criteria) this;
        }

        public Criteria andIpmNameDescExcelIsNotNull() {
            addCriterion("ipm_name_desc_excel is not null");
            return (Criteria) this;
        }

        public Criteria andIpmNameDescExcelEqualTo(String value) {
            addCriterion("ipm_name_desc_excel =", value, "ipmNameDescExcel");
            return (Criteria) this;
        }

        public Criteria andIpmNameDescExcelNotEqualTo(String value) {
            addCriterion("ipm_name_desc_excel <>", value, "ipmNameDescExcel");
            return (Criteria) this;
        }

        public Criteria andIpmNameDescExcelGreaterThan(String value) {
            addCriterion("ipm_name_desc_excel >", value, "ipmNameDescExcel");
            return (Criteria) this;
        }

        public Criteria andIpmNameDescExcelGreaterThanOrEqualTo(String value) {
            addCriterion("ipm_name_desc_excel >=", value, "ipmNameDescExcel");
            return (Criteria) this;
        }

        public Criteria andIpmNameDescExcelLessThan(String value) {
            addCriterion("ipm_name_desc_excel <", value, "ipmNameDescExcel");
            return (Criteria) this;
        }

        public Criteria andIpmNameDescExcelLessThanOrEqualTo(String value) {
            addCriterion("ipm_name_desc_excel <=", value, "ipmNameDescExcel");
            return (Criteria) this;
        }

        public Criteria andIpmNameDescExcelLike(String value) {
            addCriterion("ipm_name_desc_excel like", value, "ipmNameDescExcel");
            return (Criteria) this;
        }

        public Criteria andIpmNameDescExcelNotLike(String value) {
            addCriterion("ipm_name_desc_excel not like", value, "ipmNameDescExcel");
            return (Criteria) this;
        }

        public Criteria andIpmNameDescExcelIn(List<String> values) {
            addCriterion("ipm_name_desc_excel in", values, "ipmNameDescExcel");
            return (Criteria) this;
        }

        public Criteria andIpmNameDescExcelNotIn(List<String> values) {
            addCriterion("ipm_name_desc_excel not in", values, "ipmNameDescExcel");
            return (Criteria) this;
        }

        public Criteria andIpmNameDescExcelBetween(String value1, String value2) {
            addCriterion("ipm_name_desc_excel between", value1, value2, "ipmNameDescExcel");
            return (Criteria) this;
        }

        public Criteria andIpmNameDescExcelNotBetween(String value1, String value2) {
            addCriterion("ipm_name_desc_excel not between", value1, value2, "ipmNameDescExcel");
            return (Criteria) this;
        }

        public Criteria andIpmWeightExcelIsNull() {
            addCriterion("ipm_weight_excel is null");
            return (Criteria) this;
        }

        public Criteria andIpmWeightExcelIsNotNull() {
            addCriterion("ipm_weight_excel is not null");
            return (Criteria) this;
        }

        public Criteria andIpmWeightExcelEqualTo(Double value) {
            addCriterion("ipm_weight_excel =", value, "ipmWeightExcel");
            return (Criteria) this;
        }

        public Criteria andIpmWeightExcelNotEqualTo(Double value) {
            addCriterion("ipm_weight_excel <>", value, "ipmWeightExcel");
            return (Criteria) this;
        }

        public Criteria andIpmWeightExcelGreaterThan(Double value) {
            addCriterion("ipm_weight_excel >", value, "ipmWeightExcel");
            return (Criteria) this;
        }

        public Criteria andIpmWeightExcelGreaterThanOrEqualTo(Double value) {
            addCriterion("ipm_weight_excel >=", value, "ipmWeightExcel");
            return (Criteria) this;
        }

        public Criteria andIpmWeightExcelLessThan(Double value) {
            addCriterion("ipm_weight_excel <", value, "ipmWeightExcel");
            return (Criteria) this;
        }

        public Criteria andIpmWeightExcelLessThanOrEqualTo(Double value) {
            addCriterion("ipm_weight_excel <=", value, "ipmWeightExcel");
            return (Criteria) this;
        }

        public Criteria andIpmWeightExcelIn(List<Double> values) {
            addCriterion("ipm_weight_excel in", values, "ipmWeightExcel");
            return (Criteria) this;
        }

        public Criteria andIpmWeightExcelNotIn(List<Double> values) {
            addCriterion("ipm_weight_excel not in", values, "ipmWeightExcel");
            return (Criteria) this;
        }

        public Criteria andIpmWeightExcelBetween(Double value1, Double value2) {
            addCriterion("ipm_weight_excel between", value1, value2, "ipmWeightExcel");
            return (Criteria) this;
        }

        public Criteria andIpmWeightExcelNotBetween(Double value1, Double value2) {
            addCriterion("ipm_weight_excel not between", value1, value2, "ipmWeightExcel");
            return (Criteria) this;
        }

        public Criteria andIpmChekcDateIsNull() {
            addCriterion("ipm_chekc_date is null");
            return (Criteria) this;
        }

        public Criteria andIpmChekcDateIsNotNull() {
            addCriterion("ipm_chekc_date is not null");
            return (Criteria) this;
        }

        public Criteria andIpmChekcDateEqualTo(Date value) {
            addCriterion("ipm_chekc_date =", value, "ipmChekcDate");
            return (Criteria) this;
        }

        public Criteria andIpmChekcDateNotEqualTo(Date value) {
            addCriterion("ipm_chekc_date <>", value, "ipmChekcDate");
            return (Criteria) this;
        }

        public Criteria andIpmChekcDateGreaterThan(Date value) {
            addCriterion("ipm_chekc_date >", value, "ipmChekcDate");
            return (Criteria) this;
        }

        public Criteria andIpmChekcDateGreaterThanOrEqualTo(Date value) {
            addCriterion("ipm_chekc_date >=", value, "ipmChekcDate");
            return (Criteria) this;
        }

        public Criteria andIpmChekcDateLessThan(Date value) {
            addCriterion("ipm_chekc_date <", value, "ipmChekcDate");
            return (Criteria) this;
        }

        public Criteria andIpmChekcDateLessThanOrEqualTo(Date value) {
            addCriterion("ipm_chekc_date <=", value, "ipmChekcDate");
            return (Criteria) this;
        }

        public Criteria andIpmChekcDateIn(List<Date> values) {
            addCriterion("ipm_chekc_date in", values, "ipmChekcDate");
            return (Criteria) this;
        }

        public Criteria andIpmChekcDateNotIn(List<Date> values) {
            addCriterion("ipm_chekc_date not in", values, "ipmChekcDate");
            return (Criteria) this;
        }

        public Criteria andIpmChekcDateBetween(Date value1, Date value2) {
            addCriterion("ipm_chekc_date between", value1, value2, "ipmChekcDate");
            return (Criteria) this;
        }

        public Criteria andIpmChekcDateNotBetween(Date value1, Date value2) {
            addCriterion("ipm_chekc_date not between", value1, value2, "ipmChekcDate");
            return (Criteria) this;
        }

        public Criteria andIpmExecutorIsNull() {
            addCriterion("ipm_executor is null");
            return (Criteria) this;
        }

        public Criteria andIpmExecutorIsNotNull() {
            addCriterion("ipm_executor is not null");
            return (Criteria) this;
        }

        public Criteria andIpmExecutorEqualTo(String value) {
            addCriterion("ipm_executor =", value, "ipmExecutor");
            return (Criteria) this;
        }

        public Criteria andIpmExecutorNotEqualTo(String value) {
            addCriterion("ipm_executor <>", value, "ipmExecutor");
            return (Criteria) this;
        }

        public Criteria andIpmExecutorGreaterThan(String value) {
            addCriterion("ipm_executor >", value, "ipmExecutor");
            return (Criteria) this;
        }

        public Criteria andIpmExecutorGreaterThanOrEqualTo(String value) {
            addCriterion("ipm_executor >=", value, "ipmExecutor");
            return (Criteria) this;
        }

        public Criteria andIpmExecutorLessThan(String value) {
            addCriterion("ipm_executor <", value, "ipmExecutor");
            return (Criteria) this;
        }

        public Criteria andIpmExecutorLessThanOrEqualTo(String value) {
            addCriterion("ipm_executor <=", value, "ipmExecutor");
            return (Criteria) this;
        }

        public Criteria andIpmExecutorLike(String value) {
            addCriterion("ipm_executor like", value, "ipmExecutor");
            return (Criteria) this;
        }

        public Criteria andIpmExecutorNotLike(String value) {
            addCriterion("ipm_executor not like", value, "ipmExecutor");
            return (Criteria) this;
        }

        public Criteria andIpmExecutorIn(List<String> values) {
            addCriterion("ipm_executor in", values, "ipmExecutor");
            return (Criteria) this;
        }

        public Criteria andIpmExecutorNotIn(List<String> values) {
            addCriterion("ipm_executor not in", values, "ipmExecutor");
            return (Criteria) this;
        }

        public Criteria andIpmExecutorBetween(String value1, String value2) {
            addCriterion("ipm_executor between", value1, value2, "ipmExecutor");
            return (Criteria) this;
        }

        public Criteria andIpmExecutorNotBetween(String value1, String value2) {
            addCriterion("ipm_executor not between", value1, value2, "ipmExecutor");
            return (Criteria) this;
        }

        public Criteria andIpmPriceIsNull() {
            addCriterion("ipm_price is null");
            return (Criteria) this;
        }

        public Criteria andIpmPriceIsNotNull() {
            addCriterion("ipm_price is not null");
            return (Criteria) this;
        }

        public Criteria andIpmPriceEqualTo(Double value) {
            addCriterion("ipm_price =", value, "ipmPrice");
            return (Criteria) this;
        }

        public Criteria andIpmPriceNotEqualTo(Double value) {
            addCriterion("ipm_price <>", value, "ipmPrice");
            return (Criteria) this;
        }

        public Criteria andIpmPriceGreaterThan(Double value) {
            addCriterion("ipm_price >", value, "ipmPrice");
            return (Criteria) this;
        }

        public Criteria andIpmPriceGreaterThanOrEqualTo(Double value) {
            addCriterion("ipm_price >=", value, "ipmPrice");
            return (Criteria) this;
        }

        public Criteria andIpmPriceLessThan(Double value) {
            addCriterion("ipm_price <", value, "ipmPrice");
            return (Criteria) this;
        }

        public Criteria andIpmPriceLessThanOrEqualTo(Double value) {
            addCriterion("ipm_price <=", value, "ipmPrice");
            return (Criteria) this;
        }

        public Criteria andIpmPriceIn(List<Double> values) {
            addCriterion("ipm_price in", values, "ipmPrice");
            return (Criteria) this;
        }

        public Criteria andIpmPriceNotIn(List<Double> values) {
            addCriterion("ipm_price not in", values, "ipmPrice");
            return (Criteria) this;
        }

        public Criteria andIpmPriceBetween(Double value1, Double value2) {
            addCriterion("ipm_price between", value1, value2, "ipmPrice");
            return (Criteria) this;
        }

        public Criteria andIpmPriceNotBetween(Double value1, Double value2) {
            addCriterion("ipm_price not between", value1, value2, "ipmPrice");
            return (Criteria) this;
        }

        public Criteria andIpmRppIdIsNull() {
            addCriterion("ipm_rpp_id is null");
            return (Criteria) this;
        }

        public Criteria andIpmRppIdIsNotNull() {
            addCriterion("ipm_rpp_id is not null");
            return (Criteria) this;
        }

        public Criteria andIpmRppIdEqualTo(Integer value) {
            addCriterion("ipm_rpp_id =", value, "ipmRppId");
            return (Criteria) this;
        }

        public Criteria andIpmRppIdNotEqualTo(Integer value) {
            addCriterion("ipm_rpp_id <>", value, "ipmRppId");
            return (Criteria) this;
        }

        public Criteria andIpmRppIdGreaterThan(Integer value) {
            addCriterion("ipm_rpp_id >", value, "ipmRppId");
            return (Criteria) this;
        }

        public Criteria andIpmRppIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("ipm_rpp_id >=", value, "ipmRppId");
            return (Criteria) this;
        }

        public Criteria andIpmRppIdLessThan(Integer value) {
            addCriterion("ipm_rpp_id <", value, "ipmRppId");
            return (Criteria) this;
        }

        public Criteria andIpmRppIdLessThanOrEqualTo(Integer value) {
            addCriterion("ipm_rpp_id <=", value, "ipmRppId");
            return (Criteria) this;
        }

        public Criteria andIpmRppIdIn(List<Integer> values) {
            addCriterion("ipm_rpp_id in", values, "ipmRppId");
            return (Criteria) this;
        }

        public Criteria andIpmRppIdNotIn(List<Integer> values) {
            addCriterion("ipm_rpp_id not in", values, "ipmRppId");
            return (Criteria) this;
        }

        public Criteria andIpmRppIdBetween(Integer value1, Integer value2) {
            addCriterion("ipm_rpp_id between", value1, value2, "ipmRppId");
            return (Criteria) this;
        }

        public Criteria andIpmRppIdNotBetween(Integer value1, Integer value2) {
            addCriterion("ipm_rpp_id not between", value1, value2, "ipmRppId");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}